﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SharpErp.Data.Common.Entity
{
    [Serializable]
    [Table("goods_material_class")]
    public class GoodsMaterialClass : BaseEntity
    {
        [Column("id")]
        public int Id { get; set; }

        [Column("first_class_id")]
        public long FirstClassId { get; set; }

        [Column("second_class_id")]
        public long SecondClassId { get; set; }

        [Column("third_class_id")]
        public long ThirdClassId { get; set; }

        [Column("forth_class_id")]
        public long ForthClassId { get; set; }

        [Column("fifth_class_id")]
        public long FifthClassId { get; set; }

        [Column("six_class_id")]
        public long SixClassId { get; set; }

        [Column("seven_class_id")]
        public long SevenClassId { get; set; }

        [Column("eight_class_id")]
        public long EightClassId { get; set; }

        [Column("formulate_id")]
        public long FormulateId { get; set; }
        
        [Column("multi_one")]
        public string MultiOne { get; set; }

        [Column("first_name")]
        public string FirstName { get; set; }

        [Column("second_name")]
        public string SecondName { get; set; }

        [Column("third_name")]
        public string ThirdName { get; set; }

        [Column("forth_name")]
        public string ForthName { get; set; }

        [Column("fifth_name")]
        public string FifthName { get; set; }

        [Column("six_name")]
        public string SixName { get; set; }

        [Column("seven_standard")]
        public string SevenStandard { get; set; }

        [Column("seven_length")]
        public string SevenLength { get; set; }

        [Column("seven_height")]
        public string SevenHeight { get; set; }

        [Column("eight_count")]
        public string EightCount { get; set; }

        [Column("eight_face")]
        public string EightFace { get; set; }

        [Column("eight_unit")]
        public string EightUnit { get; set; }

        [Column("eight_in_price")]
        public string EightInPrice { get; set; }
        
        [Column("eight_price")]
        public string EightPrice { get; set; }

        [Column("eight_invalid")]
        public string EightInvalid { get; set; }

        [Column("formulate_name")]
        public string FormulateName { get; set; }

        [Column("nine_class_id")]
        public int NineClassId { get; set; }

        [Column("nine_length")]
        public string NineLength { get; set; }

        [Column("nine_height")]
        public string NineHeight { get; set; }

        [Column("item_eight_class_id")]
        public int ItemEightClassId { get; set; }

        [Column("bind_type")]
        public int BindType { get; set; }

        [NotMapped]
        public string ParentDesc { get { return FirstName + "," + SecondName; } }
        [NotMapped]
        public string Code { get { return ThirdName; } }
        [NotMapped]
        public string Standard { get { return SevenStandard; } }
        [NotMapped]
        public string Length { get { return SevenLength; } }
        [NotMapped]
        public string Area { get; set; }
        [NotMapped]
        public string Inventory { get; set; }
        [NotMapped]
        public string BuyPrice { get; set; }
    }
}
